package com.cap.bts.crmdp.dealer.remind.dao;

import java.util.List;

import com.cap.bts.crmdp.dealer.remind.dto.RemindDto;
import com.cap.bts.crmdp.dealer.remind.dto.ServiceRemindForMemberDto;
import com.cap.bts.crmdp.dealer.remind.dto.ServiceRemindHistoryDto;
import com.cap.bts.crmdp.dealer.remind.dto.ServiceRemindSubmitDto;
import com.cap.bts.framework.common.exception.AppException;

/**
 *
 */
public interface IRemindDao  {
    
    /**
     * 
     * @Date        :      Nov 25, 2015
     * @param dto
     * @return
     * @throws AppException
     */
      public  List<RemindDto>  getRemindHistoryList(RemindDto dto) throws AppException;
      
      /**
       * 
       * @Date        :      Nov 25, 2015
       * @param dto
       * @return
       * @throws AppException
       */
        public  List<RemindDto>  getRemindHistoryListByUserAndServiceType(RemindDto dto) throws AppException;
    
  /**
   * 
   * @Date        :      Nov 25, 2015
   * @param dto
   * @return
   * @throws AppException
   */
    public  List<RemindDto>  getRemindListByMemberNameOrMoblieOrCarPlate(RemindDto dto) throws AppException;
    
    
    /**
     * 
     * @Date        :      Nov 25, 2015
     * @param dto
     * @return
     * @throws AppException
     */
      public  List<RemindDto>  getRemindListByMemberNameOrMoblieOrCarPlateNoPage(RemindDto dto) throws AppException;
      
      public  List<ServiceRemindForMemberDto>  getRemindListByMemberNameOrMoblieOrCarPlateNoPage(ServiceRemindForMemberDto dto) throws AppException;

      
      /**
     * @param carPlate
     * @return
     * @throws AppException
     */
    public  List<RemindDto>  getRemindListByCarPlate(RemindDto dto) throws AppException;
    
    /**
     * @param dto
     * @return
     * @throws AppException
     */
    public  List<ServiceRemindForMemberDto>  getRemindListByMemberNameOrMoblieOrCarPlate(ServiceRemindForMemberDto dto) throws AppException;
    
    public  List<ServiceRemindForMemberDto>  getRemindListForNotice(ServiceRemindForMemberDto dto) throws AppException;
    
    public List<ServiceRemindForMemberDto> getRemindListForCreateCustomerGroup(ServiceRemindForMemberDto dto) throws AppException;
    
    /**
     * @param mobile
     * @return
     * @throws AppException
     */
    public List<ServiceRemindHistoryDto> getServiceRemindHistoryByMobilePhone(ServiceRemindForMemberDto dto) throws AppException;
    
    
}
